% math-symbols.sty
% by polossk, version 2.2.0.1230
% last update 2019-12-30
% github.com/polossk/Math-Symbols-in-LaTeX
\ProvidesPackage{math-symbols}[2019/12/30 v2.2.0.1230 Math-Symbols-in-LaTeX]
%------------------------------------------------------------------------------%
%-Requare-Packages-------------------------------------------------------------%
%------------------------------------------------------------------------------%
\RequirePackage{bm}
\RequirePackage{amsmath}
\RequirePackage{amssymb}
\RequirePackage{amsfonts}
\RequirePackage{mathrsfs}
\RequirePackage{mathtools}
%------------------------------------------------------------------------------%
%-Math-Fonts-------------------------------------------------------------------%
%------------------------------------------------------------------------------%
\def\mathbi#1{\textbf{\em #1}}
% \mathcal{A}:  Caligraphic letters
% \mathbb{A}:   Mathbb letters
% \mathfrak{A}: Mathfrak letters
% \mathsf{A}:   Math Sans serif letters
% \mathbf{A}:   Math bold letters
% \mathbi{A}:   Math bold italic letters
%------------------------------------------------------------------------------%
%-Constants-and-Useful-Symbols-------------------------------------------------%
%------------------------------------------------------------------------------%
\newcommand\mi{{\mathrm i}}                                % constant i
\newcommand\mj{{\mathrm j}}                                % constant j
\newcommand\me{{\mathrm e}}                                % constant e
\newcommand\mdeg{{^\circ}}                                 % symbol degree
\newcommand\mnatr{{\mathbb N}}                             % natural num set N
\newcommand\mintg{{\mathbb Z}}                             % integer set Z
\newcommand\mrato{{\mathbb Q}}                             % rational set Q
\newcommand\mreal{{\mathbb R}}                             % real num set R
\newcommand\mcmpx{{\mathbb C}}                             % complex set C
\newcommand\mhilb{{\mathbb H}}                             % hilbert set H
\newcommand\mcond{{\mathrm{Cond.}}}                        % condition symbol
\newcommand\mconst{{\mathrm{const}}}                       % constant symbol
\newcommand\mscon[1]{C{#1}}                                % continuous fspace
\newcommand\mscab{{\mscon{[a, b]}}}                        % continuous fspace
\newcommand\mslbg[2][I]{{L^{#2}({#1})}}                    % lebesgue fspace
\newcommand\mssbl[2][I]{{H^{#2}({#1})}}                    % sobolev fspace
%------------------------------------------------------------------------------%
%-[M]ath-[V]ector-Defination---------------------------------------------------%
%------------------------------------------------------------------------------%
\newcommand\mva{{\bm a}}                                   % vector a
\newcommand\mvb{{\bm b}}                                   % vector b
\newcommand\mvc{{\bm c}}                                   % vector c
\newcommand\mvd{{\bm d}}                                   % vector d
\newcommand\mve{{\bm e}}                                   % vector e
\newcommand\mvf{{\bm f}}                                   % vector f
\newcommand\mvg{{\bm g}}                                   % vector g
\newcommand\mvh{{\bm h}}                                   % vector h
\newcommand\mvi{{\bm i}}                                   % vector i
\newcommand\mvj{{\bm j}}                                   % vector j
\newcommand\mvk{{\bm k}}                                   % vector k
\newcommand\mvl{{\bm l}}                                   % vector l
\newcommand\mvm{{\bm m}}                                   % vector m
\newcommand\mvn{{\bm n}}                                   % vector n
\newcommand\mvo{{\bm o}}                                   % vector o
\newcommand\mvp{{\bm p}}                                   % vector p
\newcommand\mvq{{\bm q}}                                   % vector q
\newcommand\mvr{{\bm r}}                                   % vector r
\newcommand\mvs{{\bm s}}                                   % vector s
\newcommand\mvt{{\bm t}}                                   % vector t
\newcommand\mvu{{\bm u}}                                   % vector u
\newcommand\mvv{{\bm v}}                                   % vector v
\newcommand\mvw{{\bm w}}                                   % vector w
\newcommand\mvx{{\bm x}}                                   % vector x
\newcommand\mvy{{\bm y}}                                   % vector y
\newcommand\mvz{{\bm z}}                                   % vector z
\newcommand\mvalpha{{\bm \alpha}}                          % vector alpha
\newcommand\mvbeta{{\bm \beta}}                            % vector beta
\newcommand\mvgamma{{\bm \gamma}}                          % vector gamma
\newcommand\mvdelta{{\bm \delta}}                          % vector delta
\newcommand\mvepsilon{{\bm \epsilon}}                      % vector epsilon
\newcommand\mvzeta{{\bm \zeta}}                            % vector zeta
\newcommand\mveta{{\bm \eta}}                              % vector eta
\newcommand\mvtheta{{\bm \theta}}                          % vector theta
\newcommand\mviota{{\bm \iota}}                            % vector iota
\newcommand\mvkappa{{\bm \kappa}}                          % vector kappa
\newcommand\mvlambda{{\bm \lambda}}                        % vector lambda
\newcommand\mvmu{{\bm \mu}}                                % vector mu
\newcommand\mvnu{{\bm \nu}}                                % vector nu
\newcommand\mvxi{{\bm \xi}}                                % vector xi
\newcommand\mvpi{{\bm \pi}}                                % vector pi
\newcommand\mvrho{{\bm \rho}}                              % vector rho
\newcommand\mvsigma{{\bm \sigma}}                          % vector sigma
\newcommand\mvtau{{\bm \tau}}                              % vector tau
\newcommand\mvupsilon{{\bm \upsilon}}                      % vector upsilon
\newcommand\mvphi{{\bm \phi}}                              % vector phi
\newcommand\mvchi{{\bm \chi}}                              % vector chi
\newcommand\mvpsi{{\bm \psi}}                              % vector psi
\newcommand\mvomega{{\bm \omega}}                          % vector omega
\newcommand\mvvarepsilon{{\bm \varepsilon}}                % vector varepsilon
\newcommand\mvvarkappa{{\bm \varkappa}}                    % vector varkappa
\newcommand\mvvarphi{{\bm \varphi}}                        % vector varphi
\newcommand\mvvarpi{{\bm \varpi}}                          % vector varpi
\newcommand\mvvarrho{{\bm \varrho}}                        % vector varrho
\newcommand\mvvartheta{{\bm \vartheta}}                    % vector vartheta
%------------------------------------------------------------------------------%
%-[M]ath-[M]atrix-Defination---------------------------------------------------%
%------------------------------------------------------------------------------%
\newcommand\mma{{\mathbf A}}                               % matrix A
\newcommand\mmb{{\mathbf B}}                               % matrix B
\newcommand\mmc{{\mathbf C}}                               % matrix C
\newcommand\mmd{{\mathbf D}}                               % matrix D
\newcommand\mme{{\mathbf E}}                               % matrix E
\newcommand\mmf{{\mathbf F}}                               % matrix F
\newcommand\mmg{{\mathbf G}}                               % matrix G
\newcommand\mmh{{\mathbf H}}                               % matrix H
\newcommand\mmi{{\mathbf I}}                               % matrix I
\newcommand\mmj{{\mathbf J}}                               % matrix J
\newcommand\mmk{{\mathbf K}}                               % matrix K
\newcommand\mml{{\mathbf L}}                               % matrix L
\newcommand\mmm{{\mathbf M}}                               % matrix M
\newcommand\mmn{{\mathbf N}}                               % matrix N
\newcommand\mmo{{\mathbf O}}                               % matrix O
\newcommand\mmp{{\mathbf P}}                               % matrix P
\newcommand\mmq{{\mathbf Q}}                               % matrix Q
\newcommand\mmr{{\mathbf R}}                               % matrix R
\newcommand\mms{{\mathbf S}}                               % matrix S
\newcommand\mmt{{\mathbf T}}                               % matrix T
\newcommand\mmu{{\mathbf U}}                               % matrix U
\newcommand\mmv{{\mathbf V}}                               % matrix V
\newcommand\mmw{{\mathbf W}}                               % matrix W
\newcommand\mmx{{\mathbf X}}                               % matrix X
\newcommand\mmy{{\mathbf Y}}                               % matrix Y
\newcommand\mmz{{\mathbf Z}}                               % matrix Z
\newcommand\mmgamma{{\bm \Gamma}}                          % matrix Gamma
\newcommand\mmdelta{{\bm \Delta}}                          % matrix Delta
\newcommand\mmtheta{{\bm \Theta}}                          % matrix Theta
\newcommand\mmlambda{{\bm \Lambda}}                        % matrix Lambda
\newcommand\mmxi{{\bm \Xi}}                                % matrix Xi
\newcommand\mmpi{{\bm \Pi}}                                % matrix Pi
\newcommand\mmsigma{{\bm \Sigma}}                          % matrix Sigma
\newcommand\mmupsilon{{\bm \Upsilon}}                      % matrix Upsilon
\newcommand\mmphi{{\bm \Phi}}                              % matrix Phi
\newcommand\mmpsi{{\bm \Psi}}                              % matrix Psi
\newcommand\mmomega{{\bm \Omega}}                          % matrix Omega
%------------------------------------------------------------------------------%
%-[M]ath-[T]ensor-Defination---------------------------------------------------%
%------------------------------------------------------------------------------%
\newcommand\mta{{\mathbf A}}                               % tensor A
\newcommand\mtb{{\mathbf B}}                               % tensor B
\newcommand\mtc{{\mathbf C}}                               % tensor C
\newcommand\mtd{{\mathbf D}}                               % tensor D
\newcommand\mte{{\mathbf E}}                               % tensor E
\newcommand\mtf{{\mathbf F}}                               % tensor F
\newcommand\mtg{{\mathbf G}}                               % tensor G
\newcommand\mth{{\mathbf H}}                               % tensor H
\newcommand\mti{{\mathbf I}}                               % tensor I
\newcommand\mtj{{\mathbf J}}                               % tensor J
\newcommand\mtk{{\mathbf K}}                               % tensor K
\newcommand\mtl{{\mathbf L}}                               % tensor L
\newcommand\mtm{{\mathbf M}}                               % tensor M
\newcommand\mtn{{\mathbf N}}                               % tensor N
\newcommand\mto{{\mathbf O}}                               % tensor O
\newcommand\mtp{{\mathbf P}}                               % tensor P
\newcommand\mtq{{\mathbf Q}}                               % tensor Q
\newcommand\mtr{{\mathbf R}}                               % tensor R
\newcommand\mts{{\mathbf S}}                               % tensor S
\newcommand\mtt{{\mathbf T}}                               % tensor T
\newcommand\mtu{{\mathbf U}}                               % tensor U
\newcommand\mtv{{\mathbf V}}                               % tensor V
\newcommand\mtw{{\mathbf W}}                               % tensor W
\newcommand\mtx{{\mathbf X}}                               % tensor X
\newcommand\mty{{\mathbf Y}}                               % tensor Y
\newcommand\mtz{{\mathbf Z}}                               % tensor Z
\newcommand\mtgamma{{\bm \Gamma}}                          % tensor Gamma
\newcommand\mtdelta{{\bm \Delta}}                          % tensor Delta
\newcommand\mttheta{{\bm \Theta}}                          % tensor Theta
\newcommand\mtlambda{{\bm \Lambda}}                        % tensor Lambda
\newcommand\mtxi{{\bm \Xi}}                                % tensor Xi
\newcommand\mtpi{{\bm \Pi}}                                % tensor Pi
\newcommand\mtsigma{{\bm \Sigma}}                          % tensor Sigma
\newcommand\mtupsilon{{\bm \Upsilon}}                      % tensor Upsilon
\newcommand\mtphi{{\bm \Phi}}                              % tensor Phi
\newcommand\mtpsi{{\bm \Psi}}                              % tensor Psi
\newcommand\mtomega{{\bm \Omega}}                          % tensor Omega
%------------------------------------------------------------------------------%
%-[M]ath-[V]ector-Defination-[T]ransposed--------------------------------------%
%------------------------------------------------------------------------------%
\newcommand\mmat{{{\mathbf A}^T}}                          % matrix A^T
\newcommand\mmbt{{{\mathbf B}^T}}                          % matrix B^T
\newcommand\mmct{{{\mathbf C}^T}}                          % matrix C^T
\newcommand\mmdt{{{\mathbf D}^T}}                          % matrix D^T
\newcommand\mmet{{{\mathbf E}^T}}                          % matrix E^T
\newcommand\mmft{{{\mathbf F}^T}}                          % matrix F^T
\newcommand\mmgt{{{\mathbf G}^T}}                          % matrix G^T
\newcommand\mmht{{{\mathbf H}^T}}                          % matrix H^T
\newcommand\mmit{{{\mathbf I}^T}}                          % matrix I^T
\newcommand\mmjt{{{\mathbf J}^T}}                          % matrix J^T
\newcommand\mmkt{{{\mathbf K}^T}}                          % matrix K^T
\newcommand\mmlt{{{\mathbf L}^T}}                          % matrix L^T
\newcommand\mmmt{{{\mathbf M}^T}}                          % matrix M^T
\newcommand\mmnt{{{\mathbf N}^T}}                          % matrix N^T
\newcommand\mmot{{{\mathbf O}^T}}                          % matrix O^T
\newcommand\mmpt{{{\mathbf P}^T}}                          % matrix P^T
\newcommand\mmqt{{{\mathbf Q}^T}}                          % matrix Q^T
\newcommand\mmrt{{{\mathbf R}^T}}                          % matrix R^T
\newcommand\mmst{{{\mathbf S}^T}}                          % matrix S^T
\newcommand\mmtt{{{\mathbf T}^T}}                          % matrix T^T
\newcommand\mmut{{{\mathbf U}^T}}                          % matrix U^T
\newcommand\mmvt{{{\mathbf V}^T}}                          % matrix V^T
\newcommand\mmwt{{{\mathbf W}^T}}                          % matrix W^T
\newcommand\mmxt{{{\mathbf X}^T}}                          % matrix X^T
\newcommand\mmyt{{{\mathbf Y}^T}}                          % matrix Y^T
\newcommand\mmzt{{{\mathbf Z}^T}}                          % matrix Z^T
\newcommand\mmgammat{{{\bm \Gamma}^T}}                     % matrix Gamma^T
\newcommand\mmdeltat{{{\bm \Delta}^T}}                     % matrix Delta^T
\newcommand\mmthetat{{{\bm \Theta}^T}}                     % matrix Theta^T
\newcommand\mmlambdat{{{\bm \Lambda}^T}}                   % matrix Lambda^T
\newcommand\mmxit{{{\bm \Xi}^T}}                           % matrix Xi^T
\newcommand\mmpit{{{\bm \Pi}^T}}                           % matrix Pi^T
\newcommand\mmsigmat{{{\bm \Sigma}^T}}                     % matrix Sigma^T
\newcommand\mmupsilont{{{\bm \Upsilon}^T}}                 % matrix Upsilon^T
\newcommand\mmphit{{{\bm \Phi}^T}}                         % matrix Phi^T
\newcommand\mmpsit{{{\bm \Psi}^T}}                         % matrix Psi^T
\newcommand\mmomegat{{{\bm \Omega}^T}}                     % matrix Omega^T
%------------------------------------------------------------------------------%
\newcommand\mvzero{{\bm 0}}                                % vector 0
\newcommand\mvone{{\bm 1}}                                 % vector 1
\newcommand\mmzero{{\mathbf 0}}                            % matrix 0
\newcommand\mmone{{\mathbf 1}}                             % matrix 1
\newcommand\mtzero{{\mathbf 0}}                            % tensor 0
\newcommand\mtone{{\mathbf 1}}                             % tensor 1
%------------------------------------------------------------------------------%
%-Useful-Operators-------------------------------------------------------------%
%------------------------------------------------------------------------------%
\DeclareMathOperator\diff{d\!}                             % operator diff
\DeclareMathOperator\Diff{D}                               % operator Diff
\DeclareMathOperator\Expect{E}                             % operator Expect
\DeclareMathOperator\diag{diag}                            % operator diag
\DeclareMathOperator\eig{eig}                              % operator eig
\DeclareMathOperator\tr{tr}                                % operator tr
\DeclareMathOperator\lcm{lcm}                              % operator lcm
\DeclareMathOperator\rand{rand}                            % operator rand
\DeclareMathOperator\mean{mean}                            % operator mean
\DeclareMathOperator\var{var}                              % operator var
\DeclareMathOperator\corr{corr}                            % operator corr
\DeclareMathOperator\conv{conv}                            % operator conv
\DeclareMathOperator\card{card}                            % operator card
\DeclareMathOperator*{\argmin}{argmin}                     % operator argmin
\DeclareMathOperator*{\argmax}{argmax}                     % operator argmax
\DeclareMathOperator*{\argopt}{argopt}                     % operator argopt
\DeclareMathOperator*{\dist}{dist}                         % operator dist
\DeclareMathOperator\rot{rot}                              % operator rot
\DeclareMathOperator\curl{curl}                            % operator curl
\DeclareMathOperator\divergence{div}                       % operator div
%------------------------------------------------------------------------------%
%-Useful-Functions-------------------------------------------------------------%
%------------------------------------------------------------------------------%
\newcommand\abs[1]{{\lvert {#1} \rvert}}                   % operator abs
\newcommand\norm[1]{{\| {#1} \|}}                          % operator norm
\newcommand\normlp[2]{{\norm{#1}}_{#2}}                    % operator Lp-norm
%------------------------------------------------------------------------------%
%-Auto-Line-Break-Config-------------------------------------------------------%
%------------------------------------------------------------------------------%
\allowdisplaybreaks[4]
%------------------------------------------------------------------------------%
%-Useful-Aliases-and-Generators------------------------------------------------%
%------------------------------------------------------------------------------%
\newcommand\fracdiff[2]{{\frac{\diff {#1}}{\diff {#2}}}}
\newcommand\fracdiffs[1]{{\fracdiff{}{#1}}}
\newcommand\dfracdiff[2]{{\dfrac{\diff {#1}}{\diff {#2}}}}
\newcommand\dfracdiffs[1]{{\dfracdiff{}{#1}}}
\newcommand\fracpartial[2]{{\frac{\partial {#1}}{\partial {#2}}}}
\newcommand\fracpartials[1]{{\fracpartial{}{#1}}}
\newcommand\dfracpartial[2]{{\dfrac{\partial {#1}}{\partial {#2}}}}
\newcommand\dfracpartials[1]{{\dfracpartial{}{#1}}}


\newcommand\mfwhen[2]{{\left.{#1} \right|}_{#2}}

\newcommand\mclosure[1]{{\left( {#1} \right)}}
\newcommand\mclosuresquare[1]{{\left[ {#1} \right]}}
\newcommand\mclosurebrace[1]{{\left\{ {#1} \right\}}}

\newcommand\mvct[2]{{ ({#1}_1, {#1}_2, \ldots, {#1}_{#2}) }}
\newcommand\mvctz[2]{{ ({#1}_0, {#1}_1, \ldots, {#1}_{#2}) }}
\newcommand\mvctt[2]{{ \mvct{#1}{#2}^T }}
\newcommand\mvctzt[2]{{ \mvctz{#1}{#2}^T }}

\newcommand\mequlist[1]{{\left\{ \begin{aligned} #1 \end{aligned} \right.}}
\newenvironment{equlist}{\left\{ \begin{aligned} }{ \end{aligned} \right.}
%------------------------------------------------------------------------------%
%------------------------------------------------------------------------------%
%------------------------------------------------------------------------------%
% 这是所有常用的数学符号的 style file，不能单独编译。
% build by ruby and python scripts
